package pe.com.bn.sach.domain;

import java.util.Date;

/**
 * PlanTableId entity.
 * 
 * @author MyEclipse Persistence Tools
 */

public class PlanTableId implements java.io.Serializable {

	// Fields

	private String statementId;
	private Date timestamp;
	private String remarks;
	private String operation;
	private String options;
	private String objectNode;
	private String objectOwner;
	private String objectName;
	private Long objectInstance;
	private String objectType;
	private String optimizer;
	private Long searchColumns;
	private Long id;
	private Long parentId;
	private Long position;
	private Long cost;
	private Long cardinality;
	private Long bytes;
	private String otherTag;
	private String partitionStart;
	private String partitionStop;
	private Long partitionId;
	private String other;
	private String distribution;
	private Long cpuCost;
	private Long ioCost;
	private Long tempSpace;

	// Constructors

	/** default constructor */
	public PlanTableId() {
	}

	/** full constructor */
	public PlanTableId(String statementId, Date timestamp, String remarks,
			String operation, String options, String objectNode,
			String objectOwner, String objectName, Long objectInstance,
			String objectType, String optimizer, Long searchColumns, Long id,
			Long parentId, Long position, Long cost, Long cardinality,
			Long bytes, String otherTag, String partitionStart,
			String partitionStop, Long partitionId, String other,
			String distribution, Long cpuCost, Long ioCost, Long tempSpace) {
		this.statementId = statementId;
		this.timestamp = timestamp;
		this.remarks = remarks;
		this.operation = operation;
		this.options = options;
		this.objectNode = objectNode;
		this.objectOwner = objectOwner;
		this.objectName = objectName;
		this.objectInstance = objectInstance;
		this.objectType = objectType;
		this.optimizer = optimizer;
		this.searchColumns = searchColumns;
		this.id = id;
		this.parentId = parentId;
		this.position = position;
		this.cost = cost;
		this.cardinality = cardinality;
		this.bytes = bytes;
		this.otherTag = otherTag;
		this.partitionStart = partitionStart;
		this.partitionStop = partitionStop;
		this.partitionId = partitionId;
		this.other = other;
		this.distribution = distribution;
		this.cpuCost = cpuCost;
		this.ioCost = ioCost;
		this.tempSpace = tempSpace;
	}

	// Property accessors

	public String getStatementId() {
		return this.statementId;
	}

	public void setStatementId(String statementId) {
		this.statementId = statementId;
	}

	public Date getTimestamp() {
		return this.timestamp;
	}

	public void setTimestamp(Date timestamp) {
		this.timestamp = timestamp;
	}

	public String getRemarks() {
		return this.remarks;
	}

	public void setRemarks(String remarks) {
		this.remarks = remarks;
	}

	public String getOperation() {
		return this.operation;
	}

	public void setOperation(String operation) {
		this.operation = operation;
	}

	public String getOptions() {
		return this.options;
	}

	public void setOptions(String options) {
		this.options = options;
	}

	public String getObjectNode() {
		return this.objectNode;
	}

	public void setObjectNode(String objectNode) {
		this.objectNode = objectNode;
	}

	public String getObjectOwner() {
		return this.objectOwner;
	}

	public void setObjectOwner(String objectOwner) {
		this.objectOwner = objectOwner;
	}

	public String getObjectName() {
		return this.objectName;
	}

	public void setObjectName(String objectName) {
		this.objectName = objectName;
	}

	public Long getObjectInstance() {
		return this.objectInstance;
	}

	public void setObjectInstance(Long objectInstance) {
		this.objectInstance = objectInstance;
	}

	public String getObjectType() {
		return this.objectType;
	}

	public void setObjectType(String objectType) {
		this.objectType = objectType;
	}

	public String getOptimizer() {
		return this.optimizer;
	}

	public void setOptimizer(String optimizer) {
		this.optimizer = optimizer;
	}

	public Long getSearchColumns() {
		return this.searchColumns;
	}

	public void setSearchColumns(Long searchColumns) {
		this.searchColumns = searchColumns;
	}

	public Long getId() {
		return this.id;
	}

	public void setId(Long id) {
		this.id = id;
	}

	public Long getParentId() {
		return this.parentId;
	}

	public void setParentId(Long parentId) {
		this.parentId = parentId;
	}

	public Long getPosition() {
		return this.position;
	}

	public void setPosition(Long position) {
		this.position = position;
	}

	public Long getCost() {
		return this.cost;
	}

	public void setCost(Long cost) {
		this.cost = cost;
	}

	public Long getCardinality() {
		return this.cardinality;
	}

	public void setCardinality(Long cardinality) {
		this.cardinality = cardinality;
	}

	public Long getBytes() {
		return this.bytes;
	}

	public void setBytes(Long bytes) {
		this.bytes = bytes;
	}

	public String getOtherTag() {
		return this.otherTag;
	}

	public void setOtherTag(String otherTag) {
		this.otherTag = otherTag;
	}

	public String getPartitionStart() {
		return this.partitionStart;
	}

	public void setPartitionStart(String partitionStart) {
		this.partitionStart = partitionStart;
	}

	public String getPartitionStop() {
		return this.partitionStop;
	}

	public void setPartitionStop(String partitionStop) {
		this.partitionStop = partitionStop;
	}

	public Long getPartitionId() {
		return this.partitionId;
	}

	public void setPartitionId(Long partitionId) {
		this.partitionId = partitionId;
	}

	public String getOther() {
		return this.other;
	}

	public void setOther(String other) {
		this.other = other;
	}

	public String getDistribution() {
		return this.distribution;
	}

	public void setDistribution(String distribution) {
		this.distribution = distribution;
	}

	public Long getCpuCost() {
		return this.cpuCost;
	}

	public void setCpuCost(Long cpuCost) {
		this.cpuCost = cpuCost;
	}

	public Long getIoCost() {
		return this.ioCost;
	}

	public void setIoCost(Long ioCost) {
		this.ioCost = ioCost;
	}

	public Long getTempSpace() {
		return this.tempSpace;
	}

	public void setTempSpace(Long tempSpace) {
		this.tempSpace = tempSpace;
	}

	public boolean equals(Object other) {
		if ((this == other))
			return true;
		if ((other == null))
			return false;
		if (!(other instanceof PlanTableId))
			return false;
		PlanTableId castOther = (PlanTableId) other;

		return ((this.getStatementId() == castOther.getStatementId()) || (this
				.getStatementId() != null
				&& castOther.getStatementId() != null && this.getStatementId()
				.equals(castOther.getStatementId())))
				&& ((this.getTimestamp() == castOther.getTimestamp()) || (this
						.getTimestamp() != null
						&& castOther.getTimestamp() != null && this
						.getTimestamp().equals(castOther.getTimestamp())))
				&& ((this.getRemarks() == castOther.getRemarks()) || (this
						.getRemarks() != null
						&& castOther.getRemarks() != null && this.getRemarks()
						.equals(castOther.getRemarks())))
				&& ((this.getOperation() == castOther.getOperation()) || (this
						.getOperation() != null
						&& castOther.getOperation() != null && this
						.getOperation().equals(castOther.getOperation())))
				&& ((this.getOptions() == castOther.getOptions()) || (this
						.getOptions() != null
						&& castOther.getOptions() != null && this.getOptions()
						.equals(castOther.getOptions())))
				&& ((this.getObjectNode() == castOther.getObjectNode()) || (this
						.getObjectNode() != null
						&& castOther.getObjectNode() != null && this
						.getObjectNode().equals(castOther.getObjectNode())))
				&& ((this.getObjectOwner() == castOther.getObjectOwner()) || (this
						.getObjectOwner() != null
						&& castOther.getObjectOwner() != null && this
						.getObjectOwner().equals(castOther.getObjectOwner())))
				&& ((this.getObjectName() == castOther.getObjectName()) || (this
						.getObjectName() != null
						&& castOther.getObjectName() != null && this
						.getObjectName().equals(castOther.getObjectName())))
				&& ((this.getObjectInstance() == castOther.getObjectInstance()) || (this
						.getObjectInstance() != null
						&& castOther.getObjectInstance() != null && this
						.getObjectInstance().equals(
								castOther.getObjectInstance())))
				&& ((this.getObjectType() == castOther.getObjectType()) || (this
						.getObjectType() != null
						&& castOther.getObjectType() != null && this
						.getObjectType().equals(castOther.getObjectType())))
				&& ((this.getOptimizer() == castOther.getOptimizer()) || (this
						.getOptimizer() != null
						&& castOther.getOptimizer() != null && this
						.getOptimizer().equals(castOther.getOptimizer())))
				&& ((this.getSearchColumns() == castOther.getSearchColumns()) || (this
						.getSearchColumns() != null
						&& castOther.getSearchColumns() != null && this
						.getSearchColumns()
						.equals(castOther.getSearchColumns())))
				&& ((this.getId() == castOther.getId()) || (this.getId() != null
						&& castOther.getId() != null && this.getId().equals(
						castOther.getId())))
				&& ((this.getParentId() == castOther.getParentId()) || (this
						.getParentId() != null
						&& castOther.getParentId() != null && this
						.getParentId().equals(castOther.getParentId())))
				&& ((this.getPosition() == castOther.getPosition()) || (this
						.getPosition() != null
						&& castOther.getPosition() != null && this
						.getPosition().equals(castOther.getPosition())))
				&& ((this.getCost() == castOther.getCost()) || (this.getCost() != null
						&& castOther.getCost() != null && this.getCost()
						.equals(castOther.getCost())))
				&& ((this.getCardinality() == castOther.getCardinality()) || (this
						.getCardinality() != null
						&& castOther.getCardinality() != null && this
						.getCardinality().equals(castOther.getCardinality())))
				&& ((this.getBytes() == castOther.getBytes()) || (this
						.getBytes() != null
						&& castOther.getBytes() != null && this.getBytes()
						.equals(castOther.getBytes())))
				&& ((this.getOtherTag() == castOther.getOtherTag()) || (this
						.getOtherTag() != null
						&& castOther.getOtherTag() != null && this
						.getOtherTag().equals(castOther.getOtherTag())))
				&& ((this.getPartitionStart() == castOther.getPartitionStart()) || (this
						.getPartitionStart() != null
						&& castOther.getPartitionStart() != null && this
						.getPartitionStart().equals(
								castOther.getPartitionStart())))
				&& ((this.getPartitionStop() == castOther.getPartitionStop()) || (this
						.getPartitionStop() != null
						&& castOther.getPartitionStop() != null && this
						.getPartitionStop()
						.equals(castOther.getPartitionStop())))
				&& ((this.getPartitionId() == castOther.getPartitionId()) || (this
						.getPartitionId() != null
						&& castOther.getPartitionId() != null && this
						.getPartitionId().equals(castOther.getPartitionId())))
				&& ((this.getOther() == castOther.getOther()) || (this
						.getOther() != null
						&& castOther.getOther() != null && this.getOther()
						.equals(castOther.getOther())))
				&& ((this.getDistribution() == castOther.getDistribution()) || (this
						.getDistribution() != null
						&& castOther.getDistribution() != null && this
						.getDistribution().equals(castOther.getDistribution())))
				&& ((this.getCpuCost() == castOther.getCpuCost()) || (this
						.getCpuCost() != null
						&& castOther.getCpuCost() != null && this.getCpuCost()
						.equals(castOther.getCpuCost())))
				&& ((this.getIoCost() == castOther.getIoCost()) || (this
						.getIoCost() != null
						&& castOther.getIoCost() != null && this.getIoCost()
						.equals(castOther.getIoCost())))
				&& ((this.getTempSpace() == castOther.getTempSpace()) || (this
						.getTempSpace() != null
						&& castOther.getTempSpace() != null && this
						.getTempSpace().equals(castOther.getTempSpace())));
	}

	public int hashCode() {
		int result = 17;

		result = 37
				* result
				+ (getStatementId() == null ? 0 : this.getStatementId()
						.hashCode());
		result = 37 * result
				+ (getTimestamp() == null ? 0 : this.getTimestamp().hashCode());
		result = 37 * result
				+ (getRemarks() == null ? 0 : this.getRemarks().hashCode());
		result = 37 * result
				+ (getOperation() == null ? 0 : this.getOperation().hashCode());
		result = 37 * result
				+ (getOptions() == null ? 0 : this.getOptions().hashCode());
		result = 37
				* result
				+ (getObjectNode() == null ? 0 : this.getObjectNode()
						.hashCode());
		result = 37
				* result
				+ (getObjectOwner() == null ? 0 : this.getObjectOwner()
						.hashCode());
		result = 37
				* result
				+ (getObjectName() == null ? 0 : this.getObjectName()
						.hashCode());
		result = 37
				* result
				+ (getObjectInstance() == null ? 0 : this.getObjectInstance()
						.hashCode());
		result = 37
				* result
				+ (getObjectType() == null ? 0 : this.getObjectType()
						.hashCode());
		result = 37 * result
				+ (getOptimizer() == null ? 0 : this.getOptimizer().hashCode());
		result = 37
				* result
				+ (getSearchColumns() == null ? 0 : this.getSearchColumns()
						.hashCode());
		result = 37 * result + (getId() == null ? 0 : this.getId().hashCode());
		result = 37 * result
				+ (getParentId() == null ? 0 : this.getParentId().hashCode());
		result = 37 * result
				+ (getPosition() == null ? 0 : this.getPosition().hashCode());
		result = 37 * result
				+ (getCost() == null ? 0 : this.getCost().hashCode());
		result = 37
				* result
				+ (getCardinality() == null ? 0 : this.getCardinality()
						.hashCode());
		result = 37 * result
				+ (getBytes() == null ? 0 : this.getBytes().hashCode());
		result = 37 * result
				+ (getOtherTag() == null ? 0 : this.getOtherTag().hashCode());
		result = 37
				* result
				+ (getPartitionStart() == null ? 0 : this.getPartitionStart()
						.hashCode());
		result = 37
				* result
				+ (getPartitionStop() == null ? 0 : this.getPartitionStop()
						.hashCode());
		result = 37
				* result
				+ (getPartitionId() == null ? 0 : this.getPartitionId()
						.hashCode());
		result = 37 * result
				+ (getOther() == null ? 0 : this.getOther().hashCode());
		result = 37
				* result
				+ (getDistribution() == null ? 0 : this.getDistribution()
						.hashCode());
		result = 37 * result
				+ (getCpuCost() == null ? 0 : this.getCpuCost().hashCode());
		result = 37 * result
				+ (getIoCost() == null ? 0 : this.getIoCost().hashCode());
		result = 37 * result
				+ (getTempSpace() == null ? 0 : this.getTempSpace().hashCode());
		return result;
	}

}